//
//  UISwitchSwift.swift
//  Study-code
//
//  Created by quanhao huang on 2021/11/15.
//

import Foundation
import UIKit
/**
 switch控件在iOS中的意思就是切换，什么事切换呢，比如开关，按下是开，关了是关。它代表某一东西打开或者关闭，比如打开麦克风，关闭麦克风按钮
 */
class CustomSwitch: NSObject {
    
    func createUI() {
        //新建一个switch
        //let switch 注意switch在iOS中为关键字，命名是不能以关键字命名的，比如if、else、return这些都是关键字
        let micSwitch = UISwitch()
        micSwitch.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
        
        //MARK: 重要属性
        //开关是否打开，on为打开，off为关闭，animated的意思是在切换的时候是否需要动画效果
        micSwitch.setOn(true, animated: true)
        //获取开关目前的状态,返回了一个bool,false为off，true为on
        _ = micSwitch.state
        //设置图片
        micSwitch.onImage = UIImage.init(named: "打开状态下的图片")
        micSwitch.offImage = UIImage.init(named: "关闭状态下的图片")
        //设置文字
        micSwitch.title = "切换按钮"
        //如何知道切换了控件
        micSwitch.addTarget(self, action: #selector(micSwitchChangeAction(_:)), for: .valueChanged)
    }
    
    //我们需要把这个方法的switch传进来，来判断它现在的开关结果
    @objc func micSwitchChangeAction(_ mySwitch: UISwitch) {
        //我们来判断开关
        if mySwitch.isOn == true {
            print("打开了开关")
        }else {
            print("关闭了开关")
        }
    }
}
